package com.mayikt.member.output.dto;

/**
 * @Classname UserDto
 * @Description SpringBoot SpringCloud 构建微服务电商平台。
 * @Created by CHEN JIN LONG
 * @Date 2019/1/24 21:41
 * @Version 1.0
 */

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @Classname 用户输入dto
 * @Description SpringBoot SpringCloud 构建微服务电商平台。
 * @Created by CHEN JIN LONG
 * @Date 2019/1/19 00:49
 * @Version 1.0
 */
@Data
@ApiModel(value = "用户返回实体类")
public class UserOutDTO {

    @ApiModelProperty(value = "用户id")
    private Long USER_ID;
    @ApiModelProperty(value = "手机号", required = true)
    private String MOBILE;
    @ApiModelProperty(value = "邮箱", required = true)
    private String PASSWORD;
    @ApiModelProperty(value = "用户名", required = true)
    private String USER_NAME;
    @ApiModelProperty(value = "性别")
    private char SEX;
    @ApiModelProperty(value = "年龄")
    private Long AGE;
    @ApiModelProperty(value = "用户头像")
    private String PIC_IMG;
    @ApiModelProperty(value = "QQ联合登录id")
    private String QQ_OPENID;
    @ApiModelProperty(value = "微信联合登录id")
    private String WX_OPENID;


    //目前存在的问题
    //接口层传递实体类与数据库传递实体类相同
    //注册的时候不需要传递isVip  createTime updateTime
    //查询用户信息时不需要把密码返回给客户端
    //请求参数与返回参数共用同一个实体类会存在哪些问题？可能会暴露数据库字段造成被攻击降低安全性

    //DTO主要用于外部接口参数传递封装
    //DO主要用于数据库层进行传递
    //VO主要用于视图层展示

}